package com.sxy.demo.sxy;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 主体银行账号信息
 *
 * @author zhoucy
 * @date 2022-07-22 10:41:41
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("ri_p_principal_bank_account")
public class PrincipalBankAccountDO extends BaseEntity {
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 主体编号
     */
    private String principalNo;
    /**
     * 企业对公户：ENTERPRISE_BANK_ACCT
     * 法人银行卡：LEGALREPT_BANK_CARD
     */
    private String bankAccountType;
    /**
     * 绑定银行账号。个人用户绑定的银行卡号，企业用户绑定的银行帐号。
     */
    private String bankAccountNo;
    /**
     * 对公账户名字
     */
    private String bankAccountName;
    /**
     * 银行编码
     */
    private String bankCode;
    /**
     * 银行预留手机号
     */
    private String phone;
    /**
     * 对公账户开户行号。企业用户绑定账户开户支行行号。
     */
    private String brBankNo;
    /**
     * 对公账户开户行名。企业用户绑定账户开户支行名称。
     */
    private String brBankName;
    /**
     * 第三方数据
     */
    private Boolean thirdData;
    /**
     * 银行卡状态
     */
    private String bankCardStatus;
    /**
     * 默认卡
     */
    private Boolean defaultCard;
    /**
     * 第三方绑卡协议号
     */
    private String thirdAgreementNo;
    /**
     * 开户行市
     */
    private String brBankCityCode;
    /**
     * 开户行省
     */
    private String brBankProvinceCode;
    /**
     * 账户币种，多个以,分割
     */
    private String currency;
    /**
     * 开户所在国家
     */
    private String depositCountry;
    /**
     * 账户类型：00:借记卡；01:存折；02:信用卡；03:准贷记卡；04:预付卡费；05:境外卡
     */
    private String nature;
    /**
     * 分行编号：账户开户所在国家/地区为香港必填
     */
    private String branchCode;
    /**
     * 账户属性：账户开户所在国家为中国则必填。1-离岸账户；0-在岸账户
     */
    @TableField(value = "`isOSA`")
    private Integer isOSA;
    /**
     * 开户行地址
     */
    private String addr;
    /**
     * 当地银行号
     */
    private String biccode;
    /**
     * swiftcode
     */
    private String swiftcode;
    /**
     * 大额支付行号/支付行号
     */
    private String cnaps;
    /**
     * 中转行号
     */
    private String clrbank;
    /**
     * 账户属性为“在岸账户”时，上传的文件ID
     */
    private String coopAgreeFile;
    /**
     * 账户属性为“在岸账户”且“公私类型”为对公时，必填；上传的文件
     */
    private String companyFrontPhoto;

    /**
     * @see brBankProvinceCode
     */
    private LianLianCityDO lianLianCityDOpri;

    /**
     * @see brBankCityCode
     */
    private LianLianCityDO lianLianCityDOcity;

    /**
     * @see bankCode
     */
    private LianLianBankCodeDO lianLianBankCodeDO;
}
